package 刷题10月.每日一题0930;
import java.util.*;
public class Main1 {

    // [[ 56, 63 ], [55, 58], [56, 58], [55, 63]]
    //    // ]
    public static void main(String[] args) {
        //int arr[]=new int[]{3,2,8,1,1,10,9,-1};
        Scanner scan=new Scanner(System.in);
        //int arr[][]={{56, 63},{55, 58},{56, 58},{55, 63}};
       // [[56, 63],[55, 58],[56, 58],[55, 63]];
        String a=scan.nextLine();
        String b=a.substring(1,a.length()-1);
        System.out.println(b);
        String c[]=b.split("],");
        System.out.println(c.length);
        List<List<Integer>> lists=new ArrayList<>();
        for (int i=0;i<c.length;i++){
            List<Integer> list=new ArrayList<>();
            String ccc=c[i].substring(1,c[i].length());
            String cc[]=ccc.split(",");
            for(int j=0;j<cc.length;j++){
                list.add(Integer.parseInt(cc[i]));
            }
            lists.add(list);
        }
        int arr2[][]=(int[][]) lists.toArray();
//        int arr[][]=new int[][];
//        List<List<Integer>> lists=new ArrayList<>();
//        lists.toArray();

//        int arr2[][]=new int[arr1.length][];
//        for(int i=0;i<arr1.length;i++){
//            for(int j=0;j<arr1[i];j++){
//                arr2[i][j]=scan.nextInt();
//            }
//        }
        //System.out.println();

        System.out.println(minArea(arr2));


    }
    public static int minArea(int [][]points){
        Map<Integer,List<Integer>> mapX=new HashMap<>();
        Map<Integer,List<Integer>> mapY=new HashMap<>();
        for(int []point:points){
            if(!mapX.containsKey(point[0])){
                mapX.put(point[0],new ArrayList<>());
            }
            if(!mapY.containsKey(point[1])){
                mapY.put(point[1],new ArrayList<>());
            }
            mapX.get(point[0]).add(point[1]);
            mapY.get(point[1]).add(point[0]);
        }
        for(List<Integer> v:mapX.values()){
            Collections.sort(v);
        }
        for(List<Integer> v:mapY.values()){
            Collections.sort(v);
        }
        int res=Integer.MAX_VALUE;
        for(int []point:points){
            int x0=point[0],y0=point[1];
            for(int y1:mapX.get(x0)){
                if(y1<=y0){
                    continue;
                }
                for(int x2:mapY.get(y0)){
                    if(x2<=x0){
                        continue;
                    }
                    for(int x3:mapY.get(y1)){
                        if(x3==x2){
                            res=Math.min(res,(x2-x0)*(y1-y0));
                            continue;
                        }
                    }
                }
            }
        }
        return res==Integer.MAX_VALUE?0:res;
    }

}
